home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-10-30 | 2.1 KB | 137 lines | [TEXT/CWIE] |
- { TemperatureDoc.p -- document-level functions }
-
- Unit TemperatureDoc;
- Interface
-
- Uses
- Types,
- Events,
- Files,
- Menus,
- TemperatureEngine,
- AMDoc;
-
- type
- TemperatureDoc = object (AMDoc)
-
- {data members}
- mMainWindowPtr: WindowPtr;
-
- {methods - public}
- Procedure Initialize; Override;
-
- Function DoCommand (inCommand: longint): Boolean; Override;
-
- {methods - internal}
- Procedure OpenWindows; Override;
- Function WouldCloseDoc (windPtr: WindowPtr): Boolean; Override;
-
- Function GetEngine: TemperatureEngine;
-
- Procedure DoInvokeAbout;
- end;
-
- {----------}
- Function NewTemperatureDoc: TemperatureDoc;
-
- {----------}
- Implementation
-
- Uses
- ResourceDefs,
- Globals,
-
- AboutDialog,
- DDocData,
- MainWindow,
- Miscellany;
-
- {----------}
- Function NewTemperatureDoc: TemperatureDoc;
- var
- doc: TemperatureDoc;
- begin
- New (doc);
- if doc <> nil then begin
- doc.Initialize;
- end;
- NewTemperatureDoc := doc;
- end;
-
- {----------}
- Procedure TemperatureDoc.Initialize;
- begin
- inherited Initialize;
-
- mEngine := NewTemperatureEngine;
-
- mMainWindowPtr := nil;
- end;
-
- {----------}
- Function TemperatureDoc.GetEngine: TemperatureEngine;
- begin
- GetEngine := TemperatureEngine (mEngine);
- end;
-
- {----------}
- Procedure TemperatureDoc.OpenWindows;
- var
- engine: TemperatureEngine;
- Begin
- engine := GetEngine;
-
- { replace this code to get data from someplace useful }
-
- CreateMainWindow (self, engine.GetDocData);
- End;
-
- {----------}
- Function TemperatureDoc.WouldCloseDoc (
- windPtr: WindowPtr): Boolean;
- var
- numOpen: integer;
- Begin
- numOpen := 0;
-
- if mMainWindowPtr <> nil then numOpen := numOpen + 1;
-
- WouldCloseDoc := (numOpen <= 1);
- End;
-
- {----------}
- Procedure TemperatureDoc.DoInvokeAbout;
- var
- dummy: integer;
- begin
- if GetAboutDialog then begin
- { do something }
- end;
- end;
-
- {----------}
- Function TemperatureDoc.DoCommand (
- inCommand: longint): Boolean;
- begin
- DoCommand := true;
- case inCommand of
- cmdSave:
- DoSave;
- cmdSaveAs:
- DoSaveAs;
- cmdRevert:
- DoRevert;
- cmdPageSetup:
- DoPageSetup;
- cmdPrint:
- DoPrint;
- cmdInvokeAbout:
- DoInvokeAbout;
-
- otherwise
- DoCommand := false;
- end; {case}
- end;
-
- end.
-